IP-Address Lookup Using Hardware Pipelining

نویسندگان

  • Pi-Chung Wang
  • Chia-Tai Chan
  • Yaw-Chung Chen
چکیده

Fast IP address lookup mechanism is a major design issue for the next generation routers. The existing scheme performs the IP address lookup by hardware in which the forwarding table can be compressed to fit into reasonable-size SRAM, and a lookup can be accomplished in three memory accesses. In this article, we claim that with a little extra memory, it is able to further reduce the lookup time to two memory accesses. Moreover, it can be implemented in pipelined hardware so that one routing lookup per memory access can be achieved. With state-of-the-art SRAM technology, this mechanism can achieve more than 100 million routing lookups per second. KEYWORD: Internet, Address Lookup, Pipelining INTRODUCTION Speeding up the packet forwarding in the Internet backbone requires high-speed transmission links and high performance routers. The transmission technology keeps evolving and provision of gigabit fiber links is readily available. Consequently, the key to increase the capacity of the Internet lies on fast routers [7]. A multi-gigabit router must have enough internal bandwidth to switch packets between its interfaces at multi-gigabit rates, and enough packet processing power to forward multiple millions of packets per second (MPPS). Switching in the router has been studied extensively in the ATM community and solutions for fast packet processing are commercially available. As a result, the major remaining bottleneck for the Internet router design is the slow, software-based IP lookup procedures. It is inappropriate to accomplish IP lookup for the next generation routers through software, further investigation to resolve the issue is an important and highly challenged task. An IP lookup scheme is the most fundamental operation in any IP routing product. A packet carries a specific IP Destination Address (DA), which is a unique 32-bit field in current IP version 4 implementations. A router must search forwarding tables using a DA as the key, and determine which table entry represents the best route to forward the packet to its destination. Since the development of CIDR in 1993 [8], IP routes have been identified by a pair, where the prefix length ranges from 1 to 32 bits. For every incoming packet, a search in the router’s forwarding table must be performed to determine which next hop the packet should be destined for. With CIDR, the search may be decomposed into two steps. First, it needs to find the set of routes with prefixes matching that of the incoming destination IP address. Then, among this set of routes, it has to select the one with the longest matched prefix. This is the route used to identify the next hop. Due to the facts that table entries have variable lengths and that multiple entries may represent the valid routes to the same destination, the search may be complicated. Since IPv6 is still some way off, IPv4 will stay for a while. Thus, we focus on the hardware scheme optimized for IPv4 routing lookups. This work presents a fast longest prefix matching scheme for IP switch routers. Based on our proposed scheme, the forwarding table would be reduced to enough small to fit into SRAM with very low cost. Most of the address lookups can be accomplished in a single memory access. In the worst case, the number of memory accesses for a lookup is two. When implemented in pipelined hardware, the proposed scheme can achieve one routing lookup per memory access. With state-of-the-art SRAM technology, this mechanism can achieve more than 100 million routing lookups per second. The rest of the paper is organized as follows. Section 1 describes the previous work. The proposed longest prefix matching scheme and the hardware architecture is presented in Section 2. The performance analysis of the proposed scheme is addressed in Section 3. Finally, a conclusion remark is given in Section 4. 1. RELATED WORKS Several works have been proposed with novel data structures to reduce the complexity of longest-prefix matching lookups [2][9][11]. These data structures and their accompanying algorithms are designed primarily for software implementations, they are usually unable to complete a lookup in few memory accesses. The most straightforward way to implement a lookup scheme is to build a forwarding table for all possible IP addresses. However, the size of the forwarding table (next-hop array; NHA) is too large (2 entries) to be practical. To reduce the size of the forwarding table, an indirect lookup mechanism, as shown in Fig. 1 [3], can be employed. Each IP address is split into two parts: the segment (16-bit) and the offset (16-bit). The segment table has 64 K entries which record either the next hop of the route or pointers pointing to the associated NHAs. Each NHA consists of 64K entries, each entry records the next hop for the destination IP address. This scheme achieves a maximum of two memory accesses for a lookup in a 33-Mbyte forwarding table. By adding an intermediate-length table, the forwarding table can be reduced to 9 Mbytes; however, the maximum number of memory accesses for a lookup would be increased to three. When implemented in hardware pipeline, the scheme can accomplish one route lookup every memory access and achieve up to 20 million lookups per second. 16 bits 32 bits IP address

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A High Performance Parallel IP Lookup Technique Using Distributed Memory Organization and ISCB-Tree Data Structure

The IP Lookup Process is a key bottleneck in routing due to the increase in routing table size, increasing traıc and migration to IPv6 addresses. The IP address lookup involves computation of the Longest Prefix Matching (LPM), which existing solutions such as BSD Radix Tries, scale poorly when traıc in the router increases or when employed for IPv6 address lookups. In this paper, we describe a ...

متن کامل

A High Performance Parallel IP Lookup Technique Using Distributed Memory Organization and ISCB-Tree Data Structure

The IP Lookup Process is a key bottleneck in routing due to the increase in routing table size, increasing traıc and migration to IPv6 addresses. The IP address lookup involves computation of the Longest Prefix Matching (LPM), which existing solutions such as BSD Radix Tries, scale poorly when traıc in the router increases or when employed for IPv6 address lookups. In this paper, we describe a ...

متن کامل

Scalable IPv 6 Lookup / Update Design for High - Throughput Routers

Achieving scalable performance in the IPv6 address lookup and update poses a challenge to the design of existing routers. To concurrently match address prefixes with different route entries, we propose a parallel memory lookup scheme which uses three-level tables to cover various lengths of prefix distributions for the long IP address. The scheme employs a parallel CRC address compression hardw...

متن کامل

A Pipelined IP Address Lookup Module for 100 Gbps Line Rates and beyond

New Internet services and technologies call for higher packet switching capacities in the core network. Thus, a performance bottleneck arises at the backbone routers, as forwarding of Internet Protocol (IP) packets requires to search the most specific entry in a forwarding table that contains up to several hundred thousand address prefixes. The Tree Bitmap algorithm provides a well-balanced sol...

متن کامل

A fast IP routing lookup architecture for multi-gigabit switching routers based on reconfigurable systems

With today’s networks complexity, routers in backbone links must be able to handle millions of packets per second on each of their ports. Determining the corresponding output interface for each incoming packet based on its destination address requires a longest matching prefix search on the IP address. Therefore, IP address lookup is one of the most challenging problems for backbone routers. In...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000